home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / language / embedded / mcu11 / gloadd3b.arc / GBLANKD3.ASM < prev    next >
Assembly Source File  |  1991-09-09  |  5KB  |  136 lines

  1. ******************************************************************************
  2. ******************************************************************************
  3. *                                                                            *
  4. *                  Routine to Verify D3 EPROM is Blank                       *
  5. *                                                                            *
  6. ******************************************************************************
  7. *                                                                            *
  8. * Program Name: GBLANKD3.ASM                                                 *
  9. * Revision: 0.03                                                             *
  10. * Date: 9/09/91                                                              *
  11. * Written By: Robert Chretien                                                *
  12. *             Motorola MCU Applications                                      *
  13. * Assembled Under: Motorola Portable Cross Assembler (PASM) or               *
  14. *                  Motorola Freeware Assembler (AS11)                        *
  15. * Program Description:                                                       *
  16. *                                                                            *
  17. *                                                                            *
  18. *                                                                            *
  19. *                                                                            *
  20. *                                                                            *
  21. ******************************************************************************
  22. *                                                                            *
  23. * Revision Descriptions:                                                     *
  24. * 1. Rev 0.00: Original program.                                             *
  25. * 2. Rev 0.01: Added header and comments.                                    *
  26. *              If not blank LED is turned off to ID problem board.           *
  27. *              LED is turned on at start of program.                         *
  28. * 3. Rev 0.02: Moved the BootRecAddr label up to an added opcode of          *
  29. *              LDAA BoardAddress. Stopped error when board 0 was not         *
  30. *              blank.                                                        *
  31. * 4. Rev 0.03: Gets boot ROM start address from boot reset vector rather     *
  32. *              than assuming it will always stay the same.                   *
  33. *                                                                            *
  34. ******************************************************************************
  35. ******************************************************************************
  36.  
  37. RAM          EQU        $0040
  38. REGS         EQU        $0000
  39. Eprom        EQU        $F000
  40. Vectors         EQU    $FFD6
  41. PortA        EQU        REGS+$00
  42. PortC        EQU        REGS+$03
  43. PortB        EQU        REGS+$04
  44. DDRC         EQU        REGS+$07
  45. PortD        EQU        REGS+$08
  46. DDRD         EQU        REGS+$09
  47. CFORC        EQU        REGS+$0B
  48. TCNT         EQU        REGS+$0E
  49. TOC2         EQU        REGS+$18
  50. TCTL1        EQU        REGS+$20
  51. TCTL2        EQU        REGS+$21
  52. TMSK1        EQU        REGS+$22
  53. TFLG1        EQU        REGS+$23
  54. TMSK2        EQU        REGS+$24
  55. TFLG2        EQU        REGS+$25
  56. PACTL        EQU        REGS+$26
  57. Baud         EQU        REGS+$2B
  58. SCCR2        EQU        REGS+$2D
  59. SCSR         EQU        REGS+$2E
  60. SCDR         EQU        REGS+$2F
  61. OPTION       EQU        REGS+$39
  62. *
  63. *
  64. *
  65. FileLength   EQU     RAM
  66. Address      EQU     RAM+1
  67. RecordLength EQU     RAM+3
  68. CheckSum     EQU     RAM+4
  69. BoardAddress EQU     RAM+5
  70. *
  71. *
  72. *
  73.              ORG     RAM
  74. Initial      LDS     #$00FF               !Set stack pointer to $FF.
  75.              LDAA    #$30
  76.              STAA    Baud                 !With 8MHz crystal, baud=9600.
  77.              LDAA    #$0C
  78.              STAA    SCCR2                !Transmitter and receiver enabled.
  79.              LDAA    #%00100000
  80.              STAA    DDRD
  81.              STAA    PortD
  82. *
  83. *
  84. *
  85.              CLR     CheckSum
  86.              LDX     #$F000
  87. CalCheckSum  LDAA    0,X
  88.              CMPA    #$FF
  89.              BEQ     OKThisPass
  90.              LDAA    #$01
  91.              STAA    CheckSum
  92.              LDAA    #$00
  93.              STAA    PortD
  94. OKThisPass   INX
  95.              CPX     #$0000
  96.              BNE     CalCheckSum
  97. CalAddress   LDAA    PortD
  98.              LSRA
  99.              LSRA
  100.              ANDA    #%00000111
  101.              STAA    BoardAddress
  102. BootRecAddr  LDAA    BoardAddress
  103.              JSR     Wait4Rec
  104.              CBA
  105.              BNE     Boot4Last
  106.              STAA    SCDR
  107.              JSR     Wait4Rec
  108.              LDAA    CheckSum
  109.              STAA    SCDR
  110. Boot4Last    CMPB    #08
  111.              BNE     BootRecAddr
  112.              BSR     Wait4Rec
  113.              LDX     $BFFE
  114.              JMP     0,X                  !Jump back to Boot ROM.
  115. *
  116. *
  117. *
  118. Wait4Rec     LDAB    SCSR
  119.              ANDB    #%00100000
  120.              BEQ     Wait4Rec
  121.              LDAB    SCDR
  122.              RTS
  123. *
  124. *
  125. *
  126. Wait4Trans   LDAA    SCSR
  127.              ANDA    #%10000000
  128.              BEQ     Wait4Trans
  129.              RTS
  130. *
  131. *
  132. *
  133. END          EQU     *
  134.              END
  135.  
  136.